﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using vudu.Presentacion.Contrato.VU_01_Gestionar_Salones;
using vudu.Presentacion.Presentador.VU_01_Gestionar_Salones;
using vudu.Logica.Fachada;
using vudu.ClasesDominio;

namespace vudu.Presentacion.Vista.VU_01_Gestionar_Salones
{
    public partial class ConsultarSalon : System.Web.UI.Page, IContratoConsultarSalon
    {
        //Declaracion de variables
        private PresentadorConsultarSalon _presentador;

        protected void Page_Load(object sender, EventArgs e)
        {
            string rolUni = (string)Session["TipoRol"];

            if (rolUni != "Universidad")
                Response.Redirect("../VU_15 Gestion de Acceso/InicioSistema.aspx");
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            if (!IsPostBack)
            {
                //Se instancia al presentador ConsultarSalon para ejecutar el metodo ConsultarSalones que traera 
                //todos los salones de la universidad logeada
                _presentador = new PresentadorConsultarSalon(fachada, this);
                _presentador.ConsultarSalones();           
            }
        }

        //Metodo para la utilizacion de paginacion en el gridView
        protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridViewSalon.PageIndex = e.NewPageIndex;
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            _presentador = new PresentadorConsultarSalon(fachada, this);
            _presentador.busquedaSalon();

        }

        #region Implementacion del contrato
        public GridView GridSalon
        {
            get { return GridViewSalon; }
        }

        public RadioButtonList Opcion
        {
            get { return RadioButtonList1; }
        }

        public TextBox BuscarSalon
        {
            get { return TextBox1; }
        }

        public Label Error
        {
            get { return Label1; }
        }

        public Label InfoUsuario
        {
            get { return InformacionUsuario; }
        }
        #endregion Implementacion del contrato

        //Metodo que se activa al presionar el boton "buscar"
        protected void Button2Click(object sender, EventArgs e)
        {
            Error.Visible = false;
            EnlaceLogico fachada = (EnlaceLogico)Session["Fachada"];
            _presentador = new PresentadorConsultarSalon(fachada, this);
            _presentador.busquedaSalon();
        }

    }
}